﻿using Microsoft.Practices.EnterpriseLibrary.Common;
using Microsoft.Practices.EnterpriseLibrary.Common.Configuration.Fluent;
using System.Diagnostics;

namespace ZhongchenZhou.EnterpriseLibrary.Logging.DynamicsCrm2011.Configuration.Fluent
{
    public interface ILoggingConfigurationSendToDynamicsCrm2011TraceListener : ILoggingConfigurationContd, ILoggingConfigurationCategoryContd, IFluentInterface
    {
        ILoggingConfigurationSendToDynamicsCrm2011TraceListener FormatWith(IFormatterBuilder formatBuilder);

        ILoggingConfigurationSendToDynamicsCrm2011TraceListener FormatWithSharedFormatter(string formatterName);

        ILoggingConfigurationSendToDynamicsCrm2011TraceListener WithTraceOptions(TraceOptions traceOptions);

        ILoggingConfigurationSendToDynamicsCrm2011TraceListener Filter(SourceLevels sourceLevel);

        ILoggingConfigurationSendToDynamicsCrm2011TraceListener UseCrmConnection(string crmConnectionStringName);
    }
}
